Latest Technologies - অ্যাপাচি ফ্লিঙ্ক (Apache Flink) - NCTB BOOK

Apache Flink সেটআপ এবং ইনস্টলেশন করতে নিচে ধাপে ধাপে নির্দেশনা দেওয়া হলো। Flink ইনস্টলেশন Windows, Mac, এবং Linux সব অপারেটিং সিস্টেমেই করা সম্ভব, তবে এখানে সাধারণ Linux/Mac setup ব্যাখ্যা করা হয়েছে। Windows এ ইনস্টল করতে হলে WSL (Windows Subsystem for Linux) ব্যবহার করা যেতে পারে।

Flink ইনস্টলেশনের পূর্বপ্রস্তুতি:

Flink সেটআপ করার জন্য কিছু প্রয়োজনীয় সফটওয়্যার এবং কনফিগারেশন দরকার হতে পারে:

  • Java: Flink জাভা (Java 8 বা 11) ভিত্তিক, তাই JDK (Java Development Kit) ইনস্টল করা থাকতে হবে। ইনস্টলেশন চেক করতে:
java -version
  • Python: Flink এর Python API (PyFlink) ব্যবহারের জন্য Python ইনস্টল থাকতে হবে।
  • Apache Maven (ঐচ্ছিক): Flink এর সোর্স কোড থেকে build করার জন্য Maven ইনস্টল করা থাকতে পারে।

Flink ডাউনলোড এবং ইনস্টলেশন

ধাপ ১: Flink ডাউনলোড

Apache Flink এর অফিসিয়াল ওয়েবসাইট থেকে Flink ডাউনলোড করতে হবে। আপনি কম্প্রেস করা একটি টার ফাইল ডাউনলোড করবেন:

  • অফিসিয়াল ওয়েবসাইট: Apache Flink Download Page
  • ডাউনলোড কমান্ড (লিনাক্স/ম্যাক):
wget https://dlcdn.apache.org/flink/flink-1.17.0-bin-scala_2.12.tgz
  • উপরে দেওয়া লিংকটি Apache Flink এর নির্দিষ্ট ভার্সনের জন্য, আপনি ওয়েবসাইট থেকে সর্বশেষ ভার্সনটি ডাউনলোড করতে পারেন।

ধাপ ২: Flink ফাইল Extract করা

ডাউনলোডের পর Flink এর কম্প্রেস করা ফাইলটি extract করতে হবে:

tar -xzf flink-1.17.0-bin-scala_2.12.tgz

ধাপ ৩: পরিবেশ ভেরিয়েবল সেটআপ করা (ঐচ্ছিক)

আপনি চাইলে আপনার ~/.bashrc বা ~/.zshrc ফাইলে Flink এর হোম ডিরেক্টরি যুক্ত করতে পারেন:

export FLINK_HOME=/path/to/flink-1.17.0
export PATH=$PATH:$FLINK_HOME/bin

এটি করলে আপনি যেকোনো স্থানে flink কমান্ড দিয়ে Flink অ্যাক্সেস করতে পারবেন।

Flink স্ট্যান্ডঅ্যালোন মোডে রান করা

ধাপ ৪: Flink ক্লাস্টার স্টার্ট করা

Flink স্ট্যান্ডঅ্যালোন মোডে রান করার জন্য, নিম্নলিখিত কমান্ড ব্যবহার করে ক্লাস্টার শুরু করতে হবে:

cd flink-1.17.0
bin/start-cluster.sh

এতে Flink এর Job Manager এবং এক বা একাধিক Task Manager চালু হবে। আপনি চাইলে Web UI এর মাধ্যমে ক্লাস্টার পর্যবেক্ষণ করতে পারেন।

ধাপ ৫: Web UI অ্যাক্সেস করা

Flink ক্লাস্টার চালু হওয়ার পর, Web UI ব্রাউজারে অ্যাক্সেস করতে পারবেন:

  • URL: http://localhost:8081
  • Web UI তে আপনি running jobs, task status, এবং cluster metrics দেখতে পাবেন।

Flink এ একটি সিম্পল জব রান করা

Flink ডাউনলোডের সাথে একটি ডিফল্ট জব আসে, আপনি এটি পরীক্ষা করতে পারেন:

bin/flink run examples/streaming/WordCount.jar

Flink ক্লাস্টার বন্ধ করা

Flink ক্লাস্টার বন্ধ করতে নিম্নলিখিত কমান্ডটি চালাতে হবে:

bin/stop-cluster.sh

Flink ইনস্টলেশন (Python API: PyFlink)

Flink এর Python API (PyFlink) ব্যবহার করে Python এর মাধ্যমে স্ট্রিম এবং ব্যাচ ডেটা প্রসেসিং করা যায়।

ধাপ ১: PyFlink ইনস্টল করা

pip install apache-flink

ধাপ ২: PyFlink দিয়ে একটি জব রান করা

Flink এর Python SDK দিয়ে একটি সিম্পল স্ট্রিম প্রোগ্রাম লিখতে পারেন এবং রান করতে পারেন:

from pyflink.datastream import StreamExecutionEnvironment

env = StreamExecutionEnvironment.get_execution_environment()
env.from_elements([1, 2, 3, 4]).print()

env.execute("simple pyflink job")

ক্লাস্টার কনফিগারেশন (ঐচ্ছিক)

  • conf/flink-conf.yaml ফাইল এ ক্লাস্টার সেটিংস কাস্টমাইজ করা যায়।
  • taskmanager.numberOfTaskSlots: এটি প্রতিটি Task Manager এর slot সংখ্যা নির্ধারণ করে।
  • jobmanager.rpc.address এবং jobmanager.rpc.port ক্লাস্টার ডিস্ট্রিবিউটেড মোডে রান করার সময় নির্ধারণ করা হয়।

সারসংক্ষেপ

এই ধাপগুলো অনুসরণ করলে Apache Flink এর একটি বেসিক স্ট্যান্ডঅ্যালোন সেটআপ করা যাবে। চাইলে ক্লাস্টার কনফিগারেশন কাস্টমাইজ করে ডিস্ট্রিবিউটেড বা কন্টেইনারাইজড (Docker বা Kubernetes) environment এ Flink সেটআপ করতে পারবেন।

Apache Flink ইনস্টলেশন বিভিন্ন অপারেটিং সিস্টেমে করা যায়। এখানে Windows, Linux, এবং macOS এ কিভাবে Apache Flink ইনস্টল করবেন তার ধাপে ধাপে গাইড দেয়া হলো:

1. Windows এ Apache Flink ইনস্টলেশন

প্রয়োজনীয়তা:

  • Java (JDK 8 বা 11) ইনস্টল করা থাকতে হবে।
  • Apache Flink ডাউনলোড করতে হবে।
  • Java এর PATH সঠিকভাবে সেট করা থাকতে হবে।

ধাপসমূহ:

Java (JDK) ইনস্টল করুন:

  • JDK 8 বা 11 ডাউনলোড করুন এবং ইনস্টল করুন। Java ইনস্টলেশনের পর, JAVA_HOME পরিবেশ ভ্যারিয়েবল সঠিকভাবে সেট করুন।
  • নিশ্চিত করতে, cmd তে লিখুন:
java -version

Apache Flink ডাউনলোড করুন:

  • Apache Flink Download Page থেকে সর্বশেষ স্টেবল ভার্সন ডাউনলোড করুন।
  • ডাউনলোড করা .zip ফাইলটি আনজিপ করুন এবং যে কোনো ডিরেক্টরিতে রাখুন।

Flink রান করুন:

  • Command Prompt ওপেন করে, Flink এর আনজিপ করা ফোল্ডারে যান।
  • টাইপ করুন:
  • এই কমান্ড দিলে Flink এর ক্লাস্টার স্টার্ট হবে এবং আপনি ব্রাউজারে http://localhost:8081 এ Flink এর ড্যাশবোর্ড দেখতে পাবেন।
bin\start-cluster.bat

2. Linux এ Apache Flink ইনস্টলেশন

প্রয়োজনীয়তা:

  • Java (JDK 8 বা 11) ইনস্টল করা থাকতে হবে।
  • Apache Flink ডাউনলোড করতে হবে।
  • Java এর PATH সঠিকভাবে সেট করা থাকতে হবে।

ধাপসমূহ:

Java (JDK) ইনস্টল করুন:

  • ডিস্ট্রিবিউশনের উপর ভিত্তি করে, টার্মিনালে কমান্ড দিন:
  • ইনস্টলেশনের পর নিশ্চিত করতে:
java -version
sudo apt-get install openjdk-11-jdk

Apache Flink ডাউনলোড করুন:

  • Apache Flink Download Page থেকে লিনাক্স ভার্সন ডাউনলোড করুন।
  • কমান্ড ব্যবহার করে .tgz ফাইল আনজিপ করুন:
  • ফোল্ডারে যান:
cd flink-*

Copy code

tar -xzf flink-*.tgz

Flink রান করুন:

  • টার্মিনালে টাইপ করুন:
  • ব্রাউজারে গিয়ে http://localhost:8081 তে Flink এর ড্যাশবোর্ড দেখতে পারেন।
./bin/start-cluster.sh

3. macOS এ Apache Flink ইনস্টলেশন

প্রয়োজনীয়তা:

  • Java (JDK 8 বা 11) ইনস্টল করা থাকতে হবে।
  • Apache Flink ডাউনলোড করতে হবে।
  • Java এর PATH সঠিকভাবে সেট করা থাকতে হবে।

ধাপসমূহ:

Java (JDK) ইনস্টল করুন:

  • টার্মিনালে কমান্ড দিন:
  • Java এর ভার্সন নিশ্চিত করতে:
java -version
brew install openjdk@11

Apache Flink ডাউনলোড করুন:

  • Apache Flink Download Page থেকে macOS ভার্সন ডাউনলোড করুন।
  • ডাউনলোড করা .tgz ফাইল আনজিপ করুন:
  • ফোল্ডারে যান:
cd flink-*
tar -xzf flink-*.tgz

Flink রান করুন:

  • টার্মিনালে লিখুন:
  • ব্রাউজারে গিয়ে http://localhost:8081 তে Flink এর ড্যাশবোর্ড দেখতে পারবেন।
./bin/start-cluster.sh

এভাবেই Windows, Linux, এবং macOS এ Apache Flink ইনস্টল করা যায়। Flink সঠিকভাবে রান করার জন্য Java ঠিকমতো ইনস্টল ও কনফিগার করা আছে কিনা, তা যাচাই করা গুরুত্বপূর্ণ।

Cluster সেটআপ এবং Single-node Configuration

Apache Flink এ ক্লাস্টার সেটআপ এবং সিঙ্গল-নোড কনফিগারেশন সেটআপ করার জন্য আপনাকে কিছু স্টেপ অনুসরণ করতে হবে। নিচে বিস্তারিত ভাবে এই স্টেপগুলি ব্যাখ্যা করা হলো:

১. সিস্টেম রিকোয়ারমেন্ট চেক করা

Apache Flink রান করার জন্য আপনার সিস্টেমে JDK (Java Development Kit) ইনস্টল করা থাকতে হবে। সাধারণত Flink JDK 8 বা তার উপরের ভার্সন সাপোর্ট করে।

চেক করুন:

java -version

২. Apache Flink ডাউনলোড এবং ইনস্টল করা

Apache Flink এর অফিসিয়াল ওয়েবসাইট থেকে Flink ডাউনলোড করুন: Flink Download

ডাউনলোড করার পর, আর্কাইভটি আনজিপ করুন:

tar -xzf flink-*.tgz
cd flink-*

৩. সিঙ্গল-নোড কনফিগারেশন

সিঙ্গল-নোড সেটআপ সাধারণত ডেভেলপমেন্ট বা টেস্টিং পারপাসে ব্যবহৃত হয়। এতে সব কাজ (Job Manager ও Task Manager) একই মেশিনে চলে।

a. Flink Configuration File (flink-conf.yaml) কনফিগার করা:

Flink এর কনফিগারেশন ফাইল conf/flink-conf.yaml এ আছে। এটি খুলে নিম্নলিখিত পরিবর্তন করুন:

jobmanager.rpc.address: আপনার মেশিনের হোস্টনেম বা IP এড্রেস দিন (সাধারণত localhost বা 127.0.0.1)।

jobmanager.rpc.address: localhost

taskmanager.numberOfTaskSlots: আপনার সিস্টেমের রিসোর্স অনুযায়ী Task Slots সংখ্যা দিন (যেমন 2 বা 4)।

taskmanager.numberOfTaskSlots: 2

৪. ক্লাস্টার স্টার্ট করা

Flink এর ক্লাস্টার স্টার্ট করতে নিচের কমান্ডটি চালান:

bin/start-cluster.sh

৫. Flink UI চেক করা

ক্লাস্টার সফলভাবে স্টার্ট হলে, আপনি Flink এর ওয়েব UI অ্যাক্সেস করতে পারেন: http://localhost:8081। এখানে আপনি ক্লাস্টারের স্ট্যাটাস, রানিং জব, এবং অন্যান্য ডিটেইলস দেখতে পাবেন।

৬. ক্লাস্টারে জব সাবমিট করা

ক্লাস্টারে জব সাবমিট করতে নিচের কমান্ড ব্যবহার করুন:

bin/flink run -c <MainClass> <YourFlinkJar.jar>

এখানে <MainClass> আপনার অ্যাপ্লিকেশনের প্রধান ক্লাস এবং <YourFlinkJar.jar> হচ্ছে আপনার তৈরি করা Flink অ্যাপ্লিকেশনের JAR ফাইল।

৭. ক্লাস্টার স্টপ করা

ক্লাস্টার স্টপ করতে নিচের কমান্ডটি ব্যবহার করুন:

bin/stop-cluster.sh

ক্লাস্টার সেটআপ (মাল্টি-নোড কনফিগারেশন)

যদি আপনি মাল্টি-নোড ক্লাস্টার সেটআপ করতে চান, তাহলে আপনাকে একাধিক মেশিনে Flink ইনস্টল করতে হবে এবং সঠিকভাবে flink-conf.yaml কনফিগার করতে হবে।

  • masters ফাইল এ Job Managers এর লিস্ট দিতে হবে।
  • workers ফাইল এ Task Managers এর হোস্টনেম বা IP এড্রেস দিতে হবে।

উপসংহার

এই স্টেপগুলি অনুসরণ করে আপনি Apache Flink এ সিঙ্গল-নোড অথবা মাল্টি-নোড ক্লাস্টার সেটআপ করতে পারবেন। Flink ক্লাস্টার ব্যবস্থাপনা খুবই স্কেলেবল এবং সহজ, যা আপনাকে বাস্তব সময়ে ডাটা স্ট্রিম প্রসেসিং করতে সাহায্য করবে।

Apache Flink ড্যাশবোর্ড এবং মনিটরিং টুলগুলি আপনাকে Flink ক্লাস্টার এবং জবগুলির পারফরম্যান্স ও স্ট্যাটাস পর্যবেক্ষণ করতে সহায়তা করে। Flink নিজেই একটি বিল্ট-ইন ড্যাশবোর্ড সরবরাহ করে এবং বাইরের মনিটরিং টুলগুলির সঙ্গে একীভূত হয়ে কাজ করতে পারে, যেমন Prometheus, Grafana, এবং ELK Stack। নিচে Flink ড্যাশবোর্ড ও মনিটরিং টুলগুলি নিয়ে বিস্তারিত আলোচনা করা হলো:

1. Flink Dashboard (Built-in)

Flink-এর নিজস্ব ওয়েব ড্যাশবোর্ড রয়েছে, যা Flink ক্লাস্টার এবং জবগুলির তথ্য রিয়েল-টাইমে প্রদর্শন করে।

  • এটি কীভাবে অ্যাক্সেস করবেন:
    • যখন আপনি একটি Flink ক্লাস্টার রান করবেন, তখন সাধারণত এটি ডিফল্টভাবে localhost:8081 এ পাওয়া যাবে।
  • মূল ফিচারসমূহ:
    • জব ম্যানেজমেন্ট: সমস্ত রানিং ও ফেইল্ড জবগুলির একটি ওভারভিউ পাওয়া যায়।
    • জব ডিটেইলস: নির্দিষ্ট একটি জব সিলেক্ট করলে এর এক্সিকিউশন গ্রাফ, পারফরম্যান্স মেট্রিক্স, এবং চেকপয়েন্টের স্ট্যাটাস দেখতে পারেন।
    • টাস্ক ম্যানেজার ডিটেইলস: ক্লাস্টারের বিভিন্ন টাস্ক ম্যানেজার এবং তাদের স্ট্যাটাস দেখতে পারেন।
    • মেট্রিক্স: টাস্ক ম্যানেজার, জব, এবং অপারেটরের বিভিন্ন মেট্রিক্স দেখা যায়, যেমন লেটেন্সি, থ্রুপুট, এবং রিসোর্স ব্যবহার।

2. Prometheus এবং Grafana

Flink ক্লাস্টারের পারফরম্যান্স মনিটরিং এবং কাস্টম ড্যাশবোর্ড তৈরির জন্য Prometheus এবং Grafana বহুল ব্যবহৃত হয়।

Prometheus:

  • এটি একটি ওপেন সোর্স মনিটরিং সিস্টেম, যা মেট্রিক্স সংগ্রহ ও সংরক্ষণ করে।
  • Flink এবং Prometheus একত্রে কনফিগার করার জন্য metrics.prometheus.reporter ইউটিলিটি ব্যবহার করা হয়, যা Flink-এর মেট্রিক্সগুলি Prometheus-এ পাঠায়।
  • Prometheus সার্ভার সেট আপ করে এটি আপনার Flink ক্লাস্টারের সঙ্গে সংযুক্ত করতে পারেন।

Grafana:

  • এটি একটি ভিজ্যুয়ালাইজেশন টুল, যা Prometheus থেকে ডাটা নিয়ে কাস্টম ড্যাশবোর্ড তৈরি করতে সহায়ক।
  • Flink এর জন্য Grafana তে অনেক রেডিমেড ড্যাশবোর্ড টেমপ্লেট রয়েছে, যা ক্লাস্টার ও জবের মেট্রিক্স মনিটরিং আরও সহজ করে।
  • Prometheus থেকে মেট্রিক্স নিয়ে আপনি জব লেটেন্সি, চেকপয়েন্ট স্ট্যাটাস, JVM মেমোরি ইউজেজ এবং আরো অনেক কাস্টম মেট্রিক্স এর উপর গ্রাফ তৈরি করতে পারবেন।

3. ELK Stack (Elasticsearch, Logstash, এবং Kibana)

Flink জবগুলির লগ এবং ইভেন্ট সংগ্রহ ও বিশ্লেষণের জন্য ELK Stack ব্যবহৃত হতে পারে।

  • Elasticsearch: এটি ডাটা ইনডেক্সিং এবং সার্চের জন্য ব্যবহৃত হয়।
  • Logstash: এটি Flink থেকে লগ ডাটা সংগ্রহ করে এবং Elasticsearch এ পাঠায়।
  • Kibana: এটি Elasticsearch ডাটাকে ভিজ্যুয়ালাইজ করে এবং ফ্লিংক লগ ও পারফরম্যান্স এনালাইসিসের জন্য কাস্টম ড্যাশবোর্ড তৈরি করতে ব্যবহৃত হয়।

4. OpsClarity এবং Datadog

Flink এর জন্য বিশেষভাবে কাস্টমাইজড মনিটরিং সল্যুশন হিসাবে OpsClarity এবং Datadog এর মতো ক্লাউড-বেজড টুলগুলি ব্যবহৃত হয়।

  • OpsClarity: এটি একটি ক্লাউড-নেটিভ মনিটরিং টুল, যা বিশেষ করে স্ট্রিম প্রসেসিং এবং Flink-এর জন্য মেট্রিক্স সংগ্রহ ও মনিটরিং করে।
  • Datadog: Datadog ইন্টিগ্রেশনের মাধ্যমে Flink জব ও ক্লাস্টারের স্ট্যাটাস পর্যবেক্ষণ করতে এবং কাস্টম মেট্রিক্স সেট করতে পারেন।

5. Other Third-Party Tools

  • InfluxDB এবং Telegraf: InfluxDB একটি টাইম-সিরিজ ডাটাবেজ যা Flink মেট্রিক্স সংরক্ষণ করতে ব্যবহৃত হয় এবং Telegraf সেই মেট্রিক্স সংগ্রহে সাহায্য করে।
  • Nagios এবং Zabbix: ক্লাসিক মনিটরিং টুল হিসেবে Flink ক্লাস্টারের স্ট্যাটাস এবং নেটওয়ার্ক মেট্রিক্স মনিটরিং করতে ব্যবহার করা যায়।

সংক্ষেপে

Flink এর ড্যাশবোর্ড এবং মনিটরিং টুলগুলি আপনাকে রিয়েল-টাইম মনিটরিং এবং বিশ্লেষণের জন্য বিভিন্ন অপশন প্রদান করে। Flink-এর বিল্ট-ইন ড্যাশবোর্ড প্রাথমিক পর্যবেক্ষণের জন্য ভাল, কিন্তু আরও গভীর মনিটরিং ও কাস্টম ড্যাশবোর্ড তৈরি করতে Prometheus, Grafana, এবং ELK Stack মত উন্নত টুলগুলি ব্যবহৃত হয়।

আপনার প্রয়োজনে এসব টুলগুলির কনফিগারেশন ও সেটআপ নিয়ে আরো বিশদে জানতে চাইলে আমাকে জানাতে পারেন!

Apache Flink-এর সাথে IntelliJ বা Eclipse IDE কনফিগার করার জন্য কিছু স্টেপ রয়েছে, যা ফলো করলে আপনি সহজেই Flink ডেভেলপমেন্ট শুরু করতে পারবেন। নিচে আমি দুইটি IDE (IntelliJ এবং Eclipse) তে Flink কনফিগার করার বিস্তারিত গাইড দিচ্ছি:

1. IntelliJ IDEA তে Flink কনফিগারেশন

প্রয়োজনীয় Software ইনস্টলেশন:

  • IntelliJ IDEA (Ultimate বা Community Edition)
  • JDK 8 বা 11 (Flink JDK 8 বা 11 এর সাথে কম্প্যাটিবল)
  • Maven (Maven দিয়ে Flink প্রজেক্ট বিল্ড ও ডিপেন্ডেন্সি ম্যানেজমেন্ট করা সহজ)

Step 1: IntelliJ সেটআপ

  1. IntelliJ IDEA ওপেন করুন এবং File > New > Project সিলেক্ট করুন।
  2. Maven প্রজেক্ট সিলেক্ট করুন এবং Next চাপুন।
  3. Group ID এবং Artifact ID নির্ধারণ করুন (e.g., org.apache.flink এবং flink-demo).
  4. JDK সিলেক্ট করে Next এবং তারপর Finish চাপুন।

Step 2: Flink Dependencies অ্যাড করা

  1. pom.xml ফাইল ওপেন করুন।
  2. নিচের ডিপেন্ডেন্সি গুলো অ্যাড করুন:
<dependencies>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-java</artifactId>
        <version>1.15.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-streaming-java_2.12</artifactId>
        <version>1.15.2</version>
    </dependency>
</dependencies>

নোট: আপনার প্রয়োজন অনুযায়ী Flink এর ভার্সন পরিবর্তন করতে পারেন।

  1. Maven ফাইলটি সেভ করুন, এবং IntelliJ স্বয়ংক্রিয়ভাবে ডিপেন্ডেন্সিগুলো ডাউনলোড করবে।

Step 3: Flink Job রান করা

  1. একটি নতুন ক্লাস তৈরি করুন (e.g., FlinkJob) এবং নিচের মতো একটি সিম্পল স্ট্রিমিং জব লিখুন:
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;

public class FlinkJob {
    public static void main(String[] args) throws Exception {
        StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
        env.fromElements("Hello", "Flink")
           .print();
        env.execute("Flink Streaming Job");
    }
}
  1. Run Configuration তৈরি করতে Run > Edit Configurations ক্লিক করুন এবং নতুন Application কনফিগারেশন সেট করুন।
  2. Main Class এ আপনার মেইন ক্লাস (FlinkJob) সিলেক্ট করুন এবং Run চাপুন।

2. Eclipse IDE তে Flink কনফিগারেশন

প্রয়োজনীয় Software ইনস্টলেশন:

  • Eclipse IDE for Java Developers (Version 2021-06 বা এর পরের ভার্সন)
  • JDK 8 বা 11
  • Maven (ইন্সটল করা থাকলে ভালো হয়)

Step 1: Eclipse সেটআপ

  1. Eclipse ওপেন করুন এবং File > New > Maven Project সিলেক্ট করুন।
  2. Create a simple project (skip archetype selection) চেকবক্স চেক করে Next করুন।
  3. Group ID এবং Artifact ID পূরণ করুন (e.g., org.apache.flink এবং flink-demo).

Step 2: Flink Dependencies অ্যাড করা

  1. pom.xml ফাইল ওপেন করুন।
  2. IntelliJ এর মত একই ডিপেন্ডেন্সি অ্যাড করুন:
<dependencies>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-java</artifactId>
        <version>1.15.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-streaming-java_2.12</artifactId>
        <version>1.15.2</version>
    </dependency>
</dependencies>

Step 3: Flink Job রান করা

  1. src/main/java ফোল্ডারে একটি নতুন ক্লাস তৈরি করুন (e.g., FlinkJob) এবং উপরের মতো একটি সিম্পল স্ট্রিমিং জব লিখুন।
  2. Run > Run Configurations এ গিয়ে একটি নতুন Java Application কনফিগারেশন তৈরি করুন এবং Main Class সিলেক্ট করে Run করুন।

টিপস:

  • Logging Configuration: Flink লগিং কনফিগার করতে log4j.properties বা logback.xml ফাইল ব্যবহার করতে পারেন।
  • Maven Clean & Build: কোনো সমস্যা হলে mvn clean install রান করুন।
  • IDE Integration: Flink এর সাথে আরও উন্নত ইন্টিগ্রেশন করতে পারেন, যেমন Flink Dashboard এর সাথে কনফিগার করা বা IntelliJ এর প্লাগইন ব্যবহার করা।

এই স্টেপগুলো ফলো করলে আপনি সহজেই Flink ডেভেলপমেন্ট শুরু করতে পারবেন IntelliJ এবং Eclipse IDE তে।

Promotion